In the field of computer graphical user interfaces (GUIs), there is competition between the amount of space available for representing data and the usability of the interface to be produced. In representing hierarchical data, this competition is extremely important because the user of this data gains important information not only from the data itself, but also from the relationships between the data.
Historically, hierarchical data has been represented in a structured layout that helps in the understanding of parent-child relationships in the data. One approach has been to display the data in a top-down manner wherein children nodes are shown connected to their parent node with positions below the parent node. Another approach includes displaying the data in a left-right manner wherein children nodes are shown connected to their parent node with positions to the right of a parent node.
These approaches encounter multiple difficulties when the display is altered, such as when a user changes the focus of a node display. Several approaches encounter difficulty in illustrating parent-child relationship even from the initial display of the nodes. Such approaches can remove or render ambiguous the hierarchical relationship hints present in a structured hierarchical arrangement, thus making the layout more difficult to comprehend.